package com.divemotor.ventarepuestosinternet.service;

import java.util.List;

import com.divemotor.ventarepuestosinternet.beans.adapter.ModeloFabricaAdapter;
import com.divemotor.ventarepuestosinternet.beans.adapter.ModeloFabricaDataAdapter;
import com.divemotor.ventarepuestosinternet.beans.form.ModeloFabricaBeanForm;
import com.divemotor.ventarepuestosinternet.exception.DivemotorBusinessException;
import com.divemotor.ventarepuestosinternet.model.ModeloFabrica;
import com.divemotor.ventarepuestosinternet.model.TipoComponente;
import com.divemotor.ventarepuestosinternet.util.Paginacion;

public interface ModeloFabricaService {

	ModeloFabrica obtenerPorId(ModeloFabrica modeloFabrica) throws DivemotorBusinessException;

	List<ModeloFabrica> listarPorTipoComponente(TipoComponente tipoComponente) throws DivemotorBusinessException;

	List<ModeloFabrica> listarActivosPorTipoComponente(TipoComponente tipoComponente) throws DivemotorBusinessException;

	List<ModeloFabrica> listarActivosPorMarcaYTipoComponente(String marca, String tipoComponente) throws DivemotorBusinessException;

	List<ModeloFabricaAdapter> buscarModeloFabricaPorDescripcionMarcaYTipoComponente(Paginacion paginacion, 
																					 ModeloFabricaAdapter modeloFabrica) throws DivemotorBusinessException;
	
	List<ModeloFabricaAdapter> buscarModelosFabricaAdapter(ModeloFabricaBeanForm modeloFabricaBeanForm);
	
	List<ModeloFabricaDataAdapter> buscarComboModelosFabrica();

}
